Method and system for writing trajectory synchronization among multiple clients

ABSTRACT

A method and system for writing trajectory synchronization among multiple clients are disclosed. The method includes: receiving (S10) segmented writing trajectory data of a real-time writing trajectory transmitted in segments by each transmitting end; forwarding (S20) each segment of the segmented writing trajectory data to each receiving end in real time respectively, where the segmented writing trajectory data is received asynchronously and restored into a real-time writing trajectory by each receiving end; receiving (S30) complete writing trajectory data of a complete writing input transmitted by each transmitting end; and forwarding (S40) the complete writing trajectory data transmitted by each transmitting end to each receiving end, where the complete writing trajectory data is received synchronously and inserted into an interface for display by each receiving end. The method improves efficiency of writing trajectory synchronization for multiple clients while ensuring the display of writing trajectory, thereby enhancing user experience.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims priority to International Patent Application No.PCT/CN2016/113210 filed Dec. 29, 2016, which claims priority to Chineseapplication No. CN 201610246833.5, filed Apr. 19, 2016, the contents ofwhich are hereby incorporated by reference as though fully set forthherein.

TECHNICAL FIELD

The present invention relates to the technical field of computerapplication software technology and, in particular, to a method and asystem for synchronizing the writing trajectory among multiple clients.

BACKGROUND

With increasing popularity of intelligent electronic devices in everydaylife, intelligent tablet plays a significant role in various fields. Forexample, in the field of distance education, multiple intelligenttablets are interconnected over a network to obtain a face-to-facecommunication. Through a client of the intelligent tablet, a user maycommunicate writing trajectory with other clients through a server,thereby achieving a real-time synchronization of writing trajectory anda presentation of writing contents.

Currently, there are two approaches generally used in the conventionalmultiple client synchronization of writing trajectory. One approach isto transmit a writing trajectory to a server by a client of atransmitting end, and after each client finishing its trajectorywriting, the server performs synchronization and then forwards thewriting trajectory to an interface of a client of a receiving end forrestoration. This approach requires writing trajectory of each client tobe completed before synchronization, resulting in poor real-timeperformance. The other approach is to transmit segments of the writingtrajectory, over several times, to a server by a client while a writingtrajectory is written by each client, where a small segment of writingtrajectory is transmitted each time, and the server forwards the segmentof the writing trajectory to an interface of a client of a receiving endfor restoration after each segment of the writing trajectory has beensynchronized by the server. The server achieves synchronization ofwriting trajectory in a manner of“record-synchronize-record-synchronize.” In this way, the real-timeperformance is improved to some degree; however, when there are too manywriting trajectories being written at a same time, this segmentedsynchronization would affect the efficiency of synchronization, and caneasily lead to a loss of data, which is hard to be recovered.

In summary, conventional solutions have the problem of low synchronizingefficiency when performing writing trajectory synchronization formultiple clients.

SUMMARY

Accordingly, it is necessary to provide a method and system forsynchronizing writing trajectory among multiple clients to address theproblem of low synchronizing efficiency when performing writingtrajectory synchronization for multiple clients in a conventional way.

A method for writing trajectory synchronization among multiple clients,includes the steps of:

-   -   receiving segmented trajectory data of a real-time writing        trajectory transmitted in segments by each transmitting end;    -   forwarding each segment of the segmented trajectory data to        respective each receiving end in real time, wherein the        segmented trajectory data is received asynchronously and        restored into a real-time writing trajectory by each receiving        end;    -   receiving complete trajectory data of a single complete writing        input transmitted by each transmitting end; and    -   forwarding the complete trajectory data transmitted by each        transmitting end to each receiving end, wherein the complete        trajectory data is received synchronously and inserted into an        interface for display by each receiving end.

A system for writing trajectory synchronization among multiple clients,includes:

a segment receiving module to receive segmented trajectory data of areal-time writing trajectory transmitted in segments by eachtransmitting end;

an asynchronous forwarding module to forward respective each segment ofthe segmented trajectory data to each receiving end in real time,wherein the segmented trajectory data is received asynchronously andrestored into a real-time writing trajectory by each receiving end;

-   -   a complete receiving module to receive complete trajectory data        of a single complete writing input transmitted by each        transmitting end; and    -   a synchronous forwarding module to forward the complete        trajectory data transmitted by each transmitting end to each        receiving end, wherein the complete trajectory data is received        synchronously and inserted into an interface for display by each        receiving end.

During a writing process, according to the foregoing method and systemfor writing trajectory synchronization of multiple clients, segmentedtrajectory data of each transmitting end is forwarded to each receivingend in real time respectively, for the receiving end to receive and thenrestore it into a real-time writing trajectory, thereby improving theefficiency of synchronizing writing trajectory. After a completewriting, complete trajectory data of each transmitting end is forwardedto each receiving end, for the receiving end to receive synchronouslyand insert into an interface for display, which ensures displayingeffect of writing trajectory. This solution improves efficiency ofwriting trajectory synchronization for multiple clients while ensuringthe display of writing trajectory, thereby enhancing user experience.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a schematic network diagram for implementing a method forwriting trajectory synchronization of multiple clients according to anembodiment;

FIG. 2 is a flowchart of a method for writing trajectory synchronizationamong multiple clients according to an embodiment;

FIG. 3 is a flowchart of synchronous interaction of writing trajectoryaccording to an embodiment; and

FIG. 4 is a schematic diagram of a system for writing trajectorysynchronization of multiple clients according to an embodiment.

DESCRIPTION OF EMBODIMENTS

Detailed description of technical solution of the present invention willbe set forth in conjunction with the accompanying drawings.

The “transmitting end” or “receiving end” in the present invention mayinclude a client running on an intelligent terminal such as anintelligent tablet and the like. A user may log in to a server throughthe client, perform information interaction with the server via thetransmitting end during a writing process, and perform informationinteraction with the server via the receiving end when receiving awriting trajectory. For each transmitting end, the receiving end refersto any other client except for itself.

Referring to FIG. 1, FIG. 1 is a schematic network diagram forimplementing a method for writing trajectory synchronization amongmultiple clients according to an embodiment, where a plurality ofintelligent terminals are interconnected over a network (e.g. theInternet), such that a writing trajectory written on any intelligentterminal can be synchronized to each intelligent terminal (left of thefigure).

Referring to FIG. 2, FIG. 2 is a flowchart of a method for writingtrajectory synchronization of multiple clients. The method may beapplied on a server end, and includes the steps of:

S10, receiving segmented trajectory data of a real-time writingtrajectory transmitted in segments by each transmitting end.

In this step, a real-time writing trajectory input by a user istransmitted by each transmitting end, where a transmitting end transmitsin a segment-wise manner, a small segment of writing trajectory istransmitted each time, and these segmented trajectory data are receivedby a server end in real time, where trajectory data mainly recordslocation information and property information of a trajectory point.

In an embodiment, the transmitting end obtains an input point of awriting trajectory of the user, and forms a set of input points from aplurality of consecutive input points to obtain segmented trajectorydata; where an input mode of writing trajectory may include mouse input,touch input, body sensation input, optical input and the like.

In an embodiment, the transmitting end may set an identificationinformation for the set of input points of the writing trajectory of theuser, and form one or more segments of writing trajectory data segmentbased on the identification information; where the identificationinformation includes ID (identification) of a user and ID of a set ofpoints, where the ID of a user is for identifying a user by whom awriting trajectory is written, and the ID of a set of points is foridentifying a writing trajectory.

In an embodiment, when a plurality of writing trajectories are beingwritten on a transmitting end in real time, the transmitting end maytransmit the segmented trajectory data of each writing trajectory at apreset frequency. For example, the transmitting end may send thetrajectory data to the server end at a frequency of 20 times per second.Further, transmission performance of the transmitting end may bedetected. When the transmission performance is deteriorated, thetransmission frequency is reduced, and when the performance improves,the transmission frequency is restored to the preset frequency.

In the above embodiments, a real-time writing process is beingsynchronized, while a writing trajectory data is not inserted into aninterface, thus allowing an adjustment of data transmission frequencyaccording to the performance, thereby ensuring the effect of synchronouswriting.

S20, forwarding each segment of the segmented trajectory data torespective each receiving end in real time, where the segmentedtrajectory data is received asynchronously and restored into a real-timewriting trajectory by each receiving end.

In this step, the server end forwards the segmented trajectory data toeach receiving end upon receiving it, where the segmented trajectorydata is received asynchronously and restored into a real-time writingtrajectory by each receiving end. Since writing process of trajectory issynchronized in a manner of asynchronous reception, it is unnecessary towait for a synchronizing process at the server end, and the trajectorydata is not inserted into an interface, thereby improving the efficiencyof synchronization and preventing system congestion.

In an embodiment, the receiving end restores one or more segments ofsegmented trajectory data into a real-time trajectory input by the useraccording to the identification information.

In an embodiment, when forwarding each segment of the segmentedtrajectory data to each receiving end in real time, a segment of thesegmented trajectory data is discarded if the segment is failed to beforwarded.

According to above embodiment, during the process of forwarding thetrajectory data, the segmented trajectory data is discarded whenforwarding fails. Although some data may be lost, efficiency of areal-time writing is ensured.

S30, receiving complete trajectory data of a single complete writinginput transmitted by each transmitting end.

In this step, each transmitting end transmits a complete writingtrajectory input by the user, and the server end synchronizes thecomplete writing trajectory transmitted by each transmitting end,ensuring the security and integrity of writing.

S40, forwarding the complete trajectory data transmitted by eachtransmitting end to each receiving end, where the complete trajectorydata is received synchronously and inserted into an interface fordisplay by each receiving end.

In this step, after synchronizing the complete trajectory data from eachtransmitting end, the server end forwards the complete trajectory datato each receiving end that receives the complete trajectory datasynchronously, processes the complete trajectory data, and inserts thecomplete trajectory data into an interface for display.

Further, while forwarding the complete trajectory data, the serverrecords the complete trajectory data each time forwarding a completewriting input to each transmitting end, and transmits the completetrajectory data to a newly added receiving end to insert the completetrajectory data into an interface for display.

According to the embodiment, the effect of a final writing trajectorycan be ensured, and for the newly added receiving end, the effect ofwriting trajectory of the entire writing process may be obtained.

For a thorough understanding of a method for writing trajectorysynchronization of multiple clients according to the present invention,descriptions are set forth in conjunction with an application example.Referring to FIG. 3, which is a flowchart of synchronous interaction ofwriting trajectory, where a transmitting end and a receiving endinteract with a server end via a network, specifically the flow includesthe steps of:

s301, A transmitting end captures a set of input points of a writingtrajectory of a user;

s302, The transmitting end sets an identification for the set of inputpoints to form one or more segments of segmented trajectory data;

s303, The transmitting end transmits the segmented trajectory data to aserver end at a preset frequency;

s304, The server end forwards the segmented trajectory data to areceiving end in real time, where data loss is allowable during theforwarding process;

s305, The receiving end receives asynchronously and processes thesegmented trajectory data, and restores a writing process of the writingtrajectory according to an identification of the trajectory data;

s306, The transmitting end obtains a complete writing trajectory dataafter a user finishes a writing;

s307, The transmitting end transmits the single complete writingtrajectory data to the server end;

s308, The server end forwards the complete writing trajectory data tothe receiving end and records the complete writing trajectory data;

s309, The receiving end synchronously receives and processes thecomplete writing trajectory data, and inserts the complete writingtrajectory data into an interface for display.

According to the above technical solution, a plurality of users may login to a server end, and the plurality of users perform writing on anintelligent terminal, a transmitting end transmits a writing trajectoryin real time, a receiving end connected to the server end synchronizes awriting process in real time, and receives and displays a completewriting trajectory after each time a writing is finished.

Referring to FIG. 4, FIG. 4 is a schematic diagram of a system forwriting trajectory synchronization of multiple clients. The system maybe implemented on a server end, including:

a segment receiving module 10 to receive segmented trajectory data of areal-time writing trajectory transmitted in segments by eachtransmitting end;

an asynchronous forwarding module 20 to forward each segment of thesegmented trajectory data to each receiving end in real timerespectively, where the segmented trajectory data is received andrestored into a real-time writing trajectory asynchronously by eachreceiving end;

a complete receiving module 30 to receive complete trajectory data of asingle complete writing input transmitted by each transmitting end; and

a synchronous forwarding module 40 to forward the complete trajectorydata transmitted by each transmitting end to each receiving end, wherethe complete trajectory data is received synchronously and inserted intoan interface for display by each receiving end.

In an embodiment, the transmitting end captures an input point of awriting trajectory of a user, and forms a set of input points from aplurality of consecutive input points to obtain segmented trajectorydata; where an input mode of the writing trajectory may include mouseinput, touch input, body sensation input, optical input and the like.

In an embodiment, an identification information is set for a set ofinput points of a writing trajectory of a user by the transmitting end,and one or more segments of writing trajectory data segment are formedbased on the identification information; where the identificationinformation includes ID (identification) of a user and ID of a set ofpoints.

In an embodiment, when a plurality of writing trajectories are beingwritten on a transmitting end in real time, segmented trajectory data ofeach writing trajectory transmitted at a preset frequency by atransmitting end, is received. For example, the transmitting end maytransmit the writing trajectory data to the server end at a frequency of20 times per second. Further, transmission performance of a transmittingend may be detected. When the transmission performance is deteriorated,the transmission frequency is reduced; when the performance gets better,the transmission frequency is restored to the preset frequency.

In the above embodiments, a real-time writing process is beingsynchronized, while a writing trajectory data is not inserted into aninterface, thus allowing an adjustment of data transmission frequencyaccording to the performance, thereby ensuring the effect of synchronouswriting.

In an embodiment, the receiving end restores one or more segments ofsegmented writing trajectory data into a real-time writing trajectoryinput by the user according to the identification information.

In an embodiment, when the asynchronous forwarding module 20 forwardseach segment of the segmented trajectory data to each receiving end inreal time, a segment of the segmented trajectory data is discarded whenit is failed to be forwarded.

According to the above embodiment, during the process of forwarding thetrajectory data, the trajectory data is discarded when the forwardingfailed. Although some data may be lost, efficiency of a real-timewriting is ensured.

In an embodiment, when forwarding the complete trajectory data, thecomplete receiving module 30 further records the complete writingtrajectory data each time of a complete writing input of eachtransmitting end, and the complete trajectory data is transmitted to anewly added receiving end to insert the complete trajectory data into aninterface for display.

According to the solution of the above embodiment, the effect of a finalwriting trajectory can be ensured, and for the newly added receivingend, the effect of writing trajectory of the entire writing process maybe obtained.

The method for writing trajectory synchronization of multiple clientsaccording to the present invention corresponds to the system for writingtrajectory synchronization of multiple clients according to the presentinvention, thus it should be noted that the technical features andadvantages thereof as set forth in embodiments of the method for writingtrajectory synchronization of multiple clients are applicable toembodiments of the system for writing trajectory synchronization ofmultiple clients.

Technical features of the above embodiments may be combined in anycombination. For the purpose of simplicity, not all possiblecombinations of each technical feature of the above embodiments isdescribed; however, combination of these features should be consideredto be within the scope of the present specification as long as nocontradiction arises.

The discussion of the above embodiments is merely for illustratingseveral implementations in detailed and specific description of thepresent invention, but is not intended to be construed in a limitingsense. It should be noted that, for those skilled in the art, variousvariations and modifications may be made without departing from thespirit of the present invention, which fall within the scope of thepresent invention. Therefore, the scope of the present invention shouldbe subject to the appended claims.

What is claimed is:
 1. A method for writing trajectory synchronizationamong multiple clients, comprising: receiving segmented writingtrajectory data of a real-time writing trajectory transmitted insegments by each transmitting end; forwarding each segment of thesegmented writing trajectory data to respective each receiving end inreal time, wherein each receiving end receives the segmented writingtrajectory data asynchronously and restores the segmented writingtrajectory data into the real-time writing trajectory; receivingcomplete writing trajectory data associated with a single completewriting input transmitted by each transmitting end; and forwarding thecomplete writing trajectory data transmitted by each transmitting end toeach receiving end, wherein each receiving end receives the completewriting trajectory data synchronously and inserts the single completewriting input into an interface for display.
 2. The method for writingtrajectory synchronization among multiple clients according to claim 1,wherein the transmitting end captures an input point of a writingtrajectory of a user, and forms a set of input points from a pluralityof consecutive input points to obtain the segmented writing trajectorydata.
 3. The method for writing trajectory synchronization amongmultiple clients according to claim 2, wherein an input mode of thewriting trajectory comprises at least one of mouse input, touch input,body sensation input, or optical input.
 4. The method for writingtrajectory synchronization among multiple clients according to claim 2,wherein the transmitting end sets identification information for the setof input points of the writing trajectory of the user, wherein one ormore segments of the segmented writing trajectory data are formedaccording to the identification information; and the receiving endrestores the one or more segments of the segmented writing trajectorydata into the real-time writing trajectory input by the user accordingto the identification information.
 5. The method for writing trajectorysynchronization among multiple clients according to claim 4, wherein theidentification information comprises an ID of the user and an ID of theset of input points.
 6. The method for writing trajectorysynchronization among multiple clients according to claim 2, comprisingreceiving, when a plurality of writing trajectories are being written ona transmitting end in real time, the segmented writing trajectory dataof each writing trajectory transmitted by the transmitting end at apreset frequency.
 7. The method for writing trajectory synchronizationamong multiple clients according to claim 6, further comprising:detecting transmission performance of the transmitting end; reducingtransmission frequency responsive to detecting that the transmissionperformance is deteriorated; and restoring transmission frequency to apreset frequency responsive to detecting that the performance improves.8. The method for writing trajectory synchronization among multipleclients according to claim 1, further comprising, when forwarding eachsegmented writing trajectory data to each receiving end in real time,discarding the segmented writing trajectory data if the forwarding ofthe segmented writing trajectory data fails.
 9. The method for writingtrajectory synchronization among multiple clients according to claim 1,further comprising: recording the complete writing trajectory dataassociated with the single complete writing input captured at eachtransmitting end, and transmitting the complete writing trajectory datato a newly added receiving end to insert the single complete writinginput into the interface for display.
 10. A system for writingtrajectory synchronization among multiple clients, comprising a computerprocessor to: receive segmented writing trajectory data of a real-timewriting trajectory transmitted in segments by each transmitting end;forward each segment of the segmented writing trajectory data torespective each receiving end in real time, wherein each receiving endreceives the segmented writing trajectory data asynchronously andrestores segmented writing trajectory into the real-time writingtrajectory; receive complete writing trajectory data associated with asingle complete writing input transmitted by each transmitting end; andforward the complete writing trajectory data transmitted by eachtransmitting end to each receiving end, wherein each receiving endreceives the complete writing trajectory data synchronously and insertsthe single complete writing input into an interface for display.
 11. Thesystem for writing trajectory synchronization among multiple clientsaccording to claim 10, wherein the transmitting end captures an inputpoint of a writing trajectory of a user, and forms a set of input pointsfrom a plurality of consecutive input points to obtain the segmentedwriting trajectory data.
 12. The system for writing trajectorysynchronization among multiple clients according to claim 11, wherein aninput mode of the writing trajectory comprises at least one of mouseinput, touch input, body sensation input, or optical input.
 13. Thesystem for writing trajectory synchronization among multiple clientsaccording to claim 11, wherein the transmitting end sets identificationinformation for the set of input points of the writing trajectory of theuser, wherein one or more segments of the segmented writing trajectorydata are formed according to the identification information; and thereceiving end restores the one or more segments of the segmented writingtrajectory data into the real-time writing trajectory input by the useraccording to the identification information.
 14. The system for writingtrajectory synchronization among multiple clients according to claim 13,wherein the identification information comprises an ID of the user andan ID of the set of input points.
 15. The system for writing trajectorysynchronization among multiple clients according to claim 11, wherein,when a plurality of writing trajectories are being written on atransmitting end in real time, the computer processor is further toreceive the segmented writing trajectory data of each writing trajectorytransmitted by the transmitting end at a preset frequency.
 16. Thesystem for writing trajectory synchronization among multiple clientsaccording to claim 15, wherein the computer processor is further to:detect transmission performance of the transmitting end; reducetransmission frequency responsive to detecting that the transmissionperformance is deteriorated; and restore transmission frequency to apreset frequency responsive to detecting that the performance improves.17. The system for writing trajectory synchronization among multipleclients according to claim 10, wherein, when forwarding each segmentedwriting trajectory data to each receiving end in real time, the computerprocessor is further to discard the segmented writing trajectory data ifthe forwarding of the segmented writing trajectory data fails.
 18. Thesystem for writing trajectory synchronization among multiple clientsaccording to claim 10, wherein the computer processor is further torecord the complete writing trajectory data associated with a singlecomplete writing input captured at each transmitting end, andtransmitting the complete writing trajectory data to a newly addedreceiving end to insert the single complete writing input into theinterface for display.